/* eslint-disable no-use-before-define */
import axios, { type Paging, type Response } from '@/utils/axios/axios';

/** 得到优惠券列表 */
export function getDiscountCouponListAxios(data: { couponStatus: 0 | 1 | 2; current: number; size: number }): Promise<Response<Paging<Coupon>>> {
  return axios.get(`/app/coupon/page`, { data }) as Promise<Response<Paging<Coupon>>>;
}

/** 立即使用优惠券 */
export function useDiscountCouponAxios(userCouponId: number, dramaId: number | string): Promise<Response<string>> {
  return axios.post(`/app/coupon/consumeCoupon`, { userCouponId, dramaId }) as Promise<Response<string>>;
}

export type Coupon = {
  /** 使用须知 */
  consumeDesc?: string;
  /** 我方优惠卷id */
  couponId?: number;
  /** 卷名称  */
  couponName?: string;
  /** 优惠类型: 1-立减卷；2-满减卷；3-权益券；5-免广告券； */
  discountType: 1 | 2 | 3 | 5;
  /** 第三方授权openid */
  openId?: string;
  /** 券的领取须知（长度20以内） */
  receiveDesc?: string;
  /** 第三方用户的优惠卷id */
  thirdUserCouponId: string;
  /** 用户-优惠卷关联id  */
  userCouponId: number;
  /** app用户id */
  userId?: number;
  /** 有效期开始时间 */
  validBeginTime?: number;
  /** 有效期结束时间（单位秒） */
  validEndTime?: number;
  /** 状态： 0-待使用；1-已使用；2-已过期； */
  couponStatus: 0 | 1 | 2;
};
